package testes;
import static org.junit.Assert.*;

import java.util.Vector;

import junit.framework.Assert;

import org.junit.Before;
import org.junit.Test;

import projeto.Cliente;
import projeto.DevolverFilmes;
import projeto.Locacao;
import projeto.Locadora;


public class iniciarDevolucaoTest {
	Locadora locadoralanna;
	Cliente cl1, cl2;
	Vector<Cliente> clientes =  new Vector();
	Locacao lc1, lc2;
	DevolverFilmes df;
	@Before
	public void prepararTesteIniciarDevolucao(){
		locadoralanna = new Locadora();
		
		cl1 = new Cliente("c1","123","Maylon");
		cl2= new Cliente("c2","456","Aline");
		
		lc1 = new Locacao(cl1);
		lc2 = new Locacao(cl1);
		
		cl1.setLocacoes(lc1);
		cl1.setLocacoes(lc2);
		
		clientes.add(cl1);
		clientes.add(cl2);
		
		locadoralanna.setClientes(clientes);
		
		df = new DevolverFilmes(locadoralanna);
		
		
	}
	
	@Test
	public void testIniciarDevolucaoCaminhoCorreto() {
		Assert.assertNotNull(locadoralanna);
		Assert.assertNotNull(cl1);
		Assert.assertNotNull(cl2);
		
		df.iniciarOperacao("c1");
		
		Assert.assertEquals("c1", df.getCliente().getCartaoAVS());
		
		
		Assert.assertEquals(2, df.getCliente().getLocacoes().size());
		Assert.assertEquals(lc1, df.getCliente().getLocacoes().elementAt(0));	
		Assert.assertEquals(lc2, df.getCliente().getLocacoes().elementAt(1));	
		
	}
	
	@Test
	public void testIniciarDevolucaoCaminhoErrado() {
		Assert.assertNotNull(locadoralanna);
		Assert.assertNotNull(cl1);
		Assert.assertNotNull(cl2);
		
		df.iniciarOperacao("c3");
		
		Assert.assertNull(df.getCliente());
	
		
	}
	
}
